﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace MotionPlanning.MotionPlanningPrimitives
{
    public class Edge
    {
        public static Edge SpawnGraphicEdge()
        {
            return new Edge();
        }
        public static Edge SpawnGraphicEdge(Node entry, Node exit)
        {
            return new Edge(entry, exit);
        }
        protected RoboticsPlanningEdgeData Value;
        protected Node entry;
        protected Node exit;

        public Node get_entry()
        {
            return entry;
        }
        public void set_entry(Node entry)
        {
            this.entry = entry;
        }
        public Node get_exit()
        {
            return exit;
        }
        public void set_exit(Node exit)
        {
            this.exit = exit;
        }
        public RoboticsPlanningEdgeData get_Value()
        {
            return Value;
        }
        public void set_Value(RoboticsPlanningEdgeData value)
        {
            Value = value;
        }

        private Edge(Node entry, Node exit)
        {
            this.entry = entry;
            this.exit = exit;
            this.Value = null;
        }
        private Edge()
        {
            this.entry = null;
            this.exit = null;
            this.Value = null;
        }
    }
}
